com={};
com.mexcad={};
com.mexcad.solicitudes={};
com.mexcad.solicitudes.jsonrpc=null;
com.mexcad.solicitudes.formCliente=null;
com.mexcad.solicitudes.listModel=null;
com.mexcad.solicitudes.listModelClientes=null;
com.mexcad.solicitudes.listStatus=null;
com.mexcad.solicitudes.gerente=null;

com.mexcad.solicitudes.storeEjecutivos=null;
com.mexcad.solicitudes.storeSolicitantes=null;
com.mexcad.solicitudes.solicitud=null;
com.mexcad.solicitudes.winDetalle=null;
com.mexcad.solicitudes.banderaValidacion=0;
com.mexcad.solicitudes.storePlazos=null;

var arrayData;
var dsUsuarios;
var dsSolicitudes;
var a_o_var;
var a_record_var;
var a_index_var;

com.mexcad.solicitudes.printException=function(excep){
	alert("ERROR INTERNO\nArchivo:\tsolicitud.jsp\nsolicitud.js.\n\nMensaje:\n" + excep.message);
};


com.mexcad.solicitudes.initData=function() {

   try{
   		com.mexcad.solicitudes.jsonrpc = new JSONRpcClient("../JSON-RPC");
   		com.mexcad.solicitudes.cargaUsuarios();
   }catch(e){
   		com.mexcad.solicitudes.printException(e);
   	
   }
	
};

com.mexcad.solicitudes.obtieneListaTipoSolicitud=function(){
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllTipoSolicitud().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			tableDir[i] = new Array(oReg.idTipoSolicitud , oReg.descTipoSolicitud );
			
		}

		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeTiposCtas;

	} catch (excep) {
		this.printException(excep);
	}


};


com.mexcad.solicitudes.obtieneListaComisionistas=function(){
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllComisionistas().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.idComisionista , oReg.apellidoPaterno +' '+oReg.apellidoMaterno +' '+oReg.nombres);
			
		}

		var storeComisionistas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeComisionistas;

	} catch (excep) {
		this.printException(excep);
	}


};


com.mexcad.solicitudes.obtieneListaContratos=function(){
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllTipoContratos().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.idTipoContrato , oReg.descTipoContrato );
			
		}

		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeTiposCtas;

	} catch (excep) {
		this.printException(excep);
	}


};





com.mexcad.solicitudes.obtieneListaClientes=function(){
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllClientesConGerentes().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.ckCliente.idCliente , oReg.nombreCliente );
			
		}

		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeTiposCtas;

	} catch (excep) {
		this.printException(excep);
	}


};

com.mexcad.solicitudes.obtieneListaMonedas=function(){
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllMonedas().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.idMoneda , oReg.mnemonico );
			
		}

		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeTiposCtas;

	} catch (excep) {
		this.printException(excep);
	}


};


com.mexcad.solicitudes.obtieneListaPlazoSolicitado=function(){
try {
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllPeriodoSolicitado().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.idPeriodoSolicitado , oReg.descPeriodoSolicitado );
			
		}

		this.storePlazos = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return this.storePlazos;

	} catch (excep) {
		this.printException(excep);
	}


};


com.mexcad.solicitudes.obtieneListaEsquemaCredito=function(){
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllEsquemaCredito().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.idEsquemaCredito , oReg.descEsquemaCredito );
			
		}

		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeTiposCtas;

	} catch (excep) {
		this.printException(excep);
	}


};
/*
com.mexcad.solicitudes.obtieneListaTasaBase=function(){
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllTasaBase().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.idTasaBase , oReg.descTasaBase );
			
		}

		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeTiposCtas;

	} catch (excep) {
		this.printException(excep);
	}


};*/

com.mexcad.solicitudes.obtieneListaDepartamento=function(){
	//se obtienen los datos de la tabla de partidas
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllDepartamentos().list;
		var numReg = lista.length;		
		
		var tableDir = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
			
			tableDir[i] = new Array(oReg.idDepartamento , oReg.descDepartamento );
			
		}

		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return storeTiposCtas;

	} catch (excep) {
		this.printException(excep);
	}
	
};


com.mexcad.solicitudes.obtieneListaEjecutivos=function(){
	try {

		var tableDir = new Array();
		 this.storeEjecutivos = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		return this.storeEjecutivos;

	} catch (excep) {
		this.printException(excep);
	}


};

com.mexcad.solicitudes.recargaComboPlazo = function(){

	
		try{
			IniCtrFrm('cboPlazoSolicitado');
	
			if(this.storePlazos != null){
				this.storePlazos.removeAll();
				this.storePlazos.commitChanges();
			}
	
			var cboEjecutivos = Ext.getCmp('cboClientePadre');
			
			var listOperaciones= com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllPeriodoSolicitado(cboEjecutivos.getValue()).list;
	
			var numRegTipoOper = listOperaciones.length;
	
			for (var i = 0; i < numRegTipoOper; i++) {
				var oReg = listOperaciones[i];
			
				this.storePlazos.add(
						new Ext.data.Record({
						value:oReg.idPeriodoSolicitado,
						text:oReg.descPeriodoSolicitado
						})
				);
			}	
				
		
		} catch (excep) {
			if(!this.printException(excep)){
				return;
			}
		}
	
	
}

com.mexcad.solicitudes.recargaComboEjecutivos= function (){
	try{
		IniCtrFrm('cboClientes');
	
		if(this.storeEjecutivos != null){
			this.storeEjecutivos.removeAll();
			this.storeEjecutivos.commitChanges();
		}
	
		var cboEjecutivos = Ext.getCmp('cboClientePadre');
		
		var listOperaciones= com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getEjecutivosPorCliente(cboEjecutivos.getValue()).list;
		var numRegTipoOper = listOperaciones.length;

		for (var i = 0; i < numRegTipoOper; i++) {
			var oReg = listOperaciones[i];
		
			this.storeEjecutivos.add(
					new Ext.data.Record({
					value:oReg.ckejecutivo.idEjecutivo,
					text:oReg.apellidoPaterno +' '+oReg.apellidoMaterno +' '+oReg.nombres
					})
			);
		}	
			
		
	} catch (excep) {
		if(!this.printException(excep)){
			return;
		}
	}
};


com.mexcad.solicitudes.cargaSolicitante=function(){
 var solicitudTemp = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getSolicitudCompletaByid(parseInt(Ext.getCmp('cboSolicitantes').getValue()));

 Ext.getCmp('cboTipoSolicitud').setValue(solicitudTemp.cksolicitud.idTipoSolicitud);
 Ext.getCmp('nombresSolicitante').setValue(solicitudTemp.nombresSolicitante);
 Ext.getCmp('apellidoPaterno').setValue(solicitudTemp.apellidoPaterno);
 Ext.getCmp('apellidoMaterno').setValue(solicitudTemp.apellidoMaterno);

 Ext.getCmp('ingresosMensuales').setValue(solicitudTemp.ingresosMensuales);
 Ext.getCmp('fechaIngreso').setValue(solicitudTemp.fechaIngresoStr);
 Ext.getCmp('cboClientePadre').setValue(solicitudTemp.cksolicitud.idCliente);
 
com.mexcad.solicitudes.gerente =  com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getGerentePorCliente(Ext.getCmp('cboClientePadre').getValue());
					$('nombreGerente').innerHTML = com.mexcad.solicitudes.gerente.nombres+' ' +
												    com.mexcad.solicitudes.gerente.apellidoPaterno+' '+
												    com.mexcad.solicitudes.gerente.apellidoMaterno;
					IniCtrFrm('cboEjecutivos');
	
					com.mexcad.solicitudes.recargaComboEjecutivos();
  
 

};


com.mexcad.solicitudes.cargaUsuarios=function(){
	//se obtienen los datos de la tabla de partidas
	try {
		// aqui se conecta a hibernate para traer los lugares de los eventos del
		 this.storeSolicitantes = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : {}
		});
		
		var lista  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getAllSolicitudes().list;
		var numReg = lista.length;		
		
		arrayData = new Array();

		for (var i = 0; i < numReg; i++) {
			var oReg = lista[i];
		    if(oReg.cksolicitud!=null){
				/*
				alert('idUsuario: '+oReg.ckUsuario.idUsuario
										+'\n,idTipoUsuario: '+oReg.ckUsuario.idTipoUsuario
										+'\n,idDepartamento: '+oReg.ckUsuario.idDepartamento
										+'\n,login: '+oReg.login
										+'\n,password: '+oReg.password
										+'\n,sessionusr: '+oReg.sessionusr
										+'\n,nombres: '+oReg.nombres
										+'\n,apellidoPaterno: '+oReg.apellidoPaterno
										+'\n,apellidoMaterno: '+oReg.apellidoMaterno
										+'\n,nom: '+oReg.nombres +' '+oReg.apellidoPaterno+' '+oReg.apellidoMaterno
										+'\n,rfc: '+oReg.rfc
										+'\n,email: '+oReg.email
										+'\n,giro: '+oReg.giro );
										*/
								
										
				this.storeSolicitantes.add(
						new Ext.data.Record({
						value:oReg.cksolicitud.idSolicitud,
						text:oReg.apellidoPaterno +' '+oReg.apellidoMaterno +' '+oReg.nombresSolicitante
						})
				);
				
				arrayData[i] = new Array(oReg.cksolicitud.idSolicitud , 
										oReg.idMoneda,
										oReg.cksolicitud.idTipoSolicitud,
										oReg.cksolicitud.idCliente,
										oReg.idEsquemaCredito,
										oReg.cksolicitud.idUsuario,
										oReg.idEstatusSolicitud,
										oReg.idEjecutivo,
										oReg.tasaBase,
										oReg.idPeriodoSolicitado,
										oReg.nombresSolicitante,
										oReg.apellidoPaterno,
										oReg.apellidoMaterno,
										oReg.calle,
										oReg.colonia,
										oReg.pobDelegacion,
										oReg.cp,
										oReg.telefono,
										oReg.ingresosMensuales,
										oReg.fechaIngreso,
										oReg.montoSolicitado,
										oReg.plazoSolicitado,
										oReg.fechaIngresoStr,
										oReg.apellidoPaterno+' '+oReg.apellidoMaterno+' '+oReg.nombresSolicitante,
										oReg.requiereAval,
										oReg.nombreAval,
										oReg.fechaInicialStr);
				
							}			
		}

/*
		var storeTiposCtas = new Ext.data.SimpleStore({
			fields : [
				{name : 'value'}, 
				{name : 'text'}
			],
			data : tableDir
		});
		*/
		return arrayData;

	} catch (excep) {
		this.printException(excep);
	}
	
};


com.mexcad.solicitudes.validaCampos=function (){
	var bandera=true;
	var campo='';
	
	var frm=Ext.getCmp('formSolicitudes').getForm();

	if(Ext.getCmp('cboTipoSolicitud').getValue()==''){
		Ext.getCmp('cboTipoSolicitud').selectOnFocus=true;
		bandera=false;
		campo+=' Tipo solicitud, ';
	}
	if(Ext.getCmp('nombresSolicitante').getValue()==''){
		Ext.getCmp('nombresSolicitante').selectOnFocus=true;
		bandera=false;
		campo+=' nombres, ';
	}
	if(Ext.getCmp('apellidoPaterno').getValue()==''){
		Ext.getCmp('apellidoPaterno').selectOnFocus=true;
		bandera=false;
		campo+=' apellidoPaterno, ';
	}
	if(Ext.getCmp('apellidoMaterno').getValue()==''){
		Ext.getCmp('apellidoMaterno').selectOnFocus=true;
		bandera=false;
		campo+=' apellidoMaterno, ';
	}	
	if(Ext.getCmp('cboClientePadre').getValue()==''){
		Ext.getCmp('cboClientePadre').selectOnFocus=true;
		bandera=false;
		campo+=' Cliente Padre, ';
	}	
	if(Ext.getCmp('ingresosMensuales').getValue()==''){
		Ext.getCmp('ingresosMensuales').selectOnFocus=true;
		bandera=false;
		campo+=' Ingresos mensuales, ';
	}	
	if(Ext.getCmp('fechaIngreso').getValue()==''){
		Ext.getCmp('fechaIngreso').selectOnFocus=true;
		bandera=false;
		campo+=' Fecha de ingreso, ';
	}	
	if(Ext.getCmp('calle').getValue()==''){
		Ext.getCmp('calle').selectOnFocus=true;
		bandera=false;
		campo+=' Calle, ';
	}
	if(Ext.getCmp('colonia').getValue()==''){
		Ext.getCmp('colonia').selectOnFocus=true;
		bandera=false;
		campo+=' colonia, ';
	}
	if(Ext.getCmp('cp').getValue()==''){
		Ext.getCmp('cp').selectOnFocus=true;
		bandera=false;
		campo+=' cp, ';
	}
	if(Ext.getCmp('telefono').getValue()==''){
		Ext.getCmp('telefono').selectOnFocus=true;
		bandera=false;
		campo+=' Telefono, ';
	}	
	if(Ext.getCmp('montoSolicitado').getValue()==''){
		Ext.getCmp('montoSolicitado').selectOnFocus=true;
		bandera=false;
		campo+=' Monto solicitado, ';
	}
	if(Ext.getCmp('cboMoneda').getValue()==''){
		Ext.getCmp('cboMoneda').selectOnFocus=true;
		bandera=false;
		campo+=' Moneda, ';
	}	
	if(Ext.getCmp('fechaIngreso').getValue()==''){
		Ext.getCmp('fechaIngreso').selectOnFocus=true;
		bandera=false;
		campo+=' Fecha de ingreso, ';
	}	
	if(Ext.getCmp('cboEsquemaCredito').getValue()==''){
		Ext.getCmp('cboEsquemaCredito').selectOnFocus=true;
		bandera=false;
		campo+=' Esquema de credito, ';
	}	
	
	
	if(Ext.getCmp('tasaBase').getValue()==''){
		Ext.getCmp('tasaBase').selectOnFocus=true;
		bandera=false;
		campo+=' Tasa de interes, ';
	}	
	if(Ext.getCmp('tasaBase').getValue()==''){
		Ext.getCmp('tasaBase').selectOnFocus=true;
		bandera=false;
		campo+=' Tasa de interes, ';
	}	
	if(Ext.getCmp('plazo').getValue()==''){
		Ext.getCmp('plazo').selectOnFocus=true;
		bandera=false;
		campo+=' plazo, ';
	}	
	if(Ext.getCmp('cboPlazoSolicitado').getValue()==''){
		Ext.getCmp('cboPlazoSolicitado').selectOnFocus=true;
		bandera=false;
		campo+=' Plazo solicitado, ';
	}	
	if(Ext.getCmp('cboEjecutivos').getValue()==''){
		Ext.getCmp('cboEjecutivos').selectOnFocus=true;
		bandera=false;
		campo+=' Ejecutivos, ';
	}		
	if(Ext.getCmp('cboComisionistas').getValue()==''){
		Ext.getCmp('cboComisionistas').selectOnFocus=true;
		bandera=false;
		campo+=' Comisionista, ';
	}		
	
	
	if(Ext.getCmp('requiereAval').getValue() && Ext.getCmp('nombreAval').getValue()==''){
		Ext.getCmp('nombreAval').selectOnFocus=true;
		bandera=false;
		campo+=' Nombre del aval, ';
	}
	if(bandera!=true)
		alert("No son v�lidos los param�tros para el guardado de datos, \n por favor revise: "+campo);
//		funExtJS.alert("No son v�lidos los param�tros para el guardado de datos, \n por favor revise: "+campo, Ext.MessageBox.INFO);
	return bandera;
	

};

com.mexcad.solicitudes.limpiaForma=function(){
	
	var fechaActual =com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getCurrentDateStr();
	
	Ext.getCmp('requiereAval').setValue(false);	
	
	Ext.getCmp('ingresosMensuales').setDisabled(false);
	Ext.getCmp('montoSolicitado').setDisabled(false);
	Ext.getCmp('fechaIngreso').setDisabled(false);
	Ext.getCmp('btnValida').setDisabled(false);			
	Ext.getCmp('btnGuarda').setDisabled(true);	
	
	com.mexcad.solicitudes.banderaValidacion=0;
	com.mexcad.solicitudes.solicitud=null;
	$('mensajeCredito').innerHTML='';
	$('nombreGerente').innerHTML='';
	Ext.getCmp('cboTipoSolicitud').setValue(1);
	Ext.getCmp('cboMoneda').setValue(1);
	Ext.getCmp('cboEsquemaCredito').setValue(3);
	Ext.getCmp('fechaIngreso').setValue(fechaActual);
	Ext.getCmp('fechaInicio').setValue(fechaActual);
	Ext.getCmp('cboContrato').setValue(1);
	Ext.getCmp('ingresosMensuales').setValue(0.00);
	Ext.getCmp('montoSolicitado').setValue(0.00);
	
	
	IniCtrFrm('nombresSolicitante|apellidoPaterno|apellidoMaterno|cboClientePadre|nombreAval');
	IniCtrFrm('calle|colonia|pobDelegacion|cp|telefono|plazo|cboPlazoSolicitado|cboEjecutivos|cboComisionistas');
//location="./solicitud.jsp";	
	//	cboTipoUsuario.reset();
	//	cboDepartamento.reset();

};


com.mexcad.solicitudes.muestraTabla=function(){
	
	var montoSolicitado = eliminaComas(Ext.getCmp('montoSolicitado').getValue(), 'IMPORTE');
	var tasaInteres = Ext.getCmp('tasaBase').getValue();
	var plazo = Ext.getCmp('plazo').getValue();
	var idPlazoSol = Ext.getCmp('cboPlazoSolicitado').getValue();
	var esquemaCredito = Ext.getCmp('cboEsquemaCredito').getValue();
	var numCliente=parseInt(Ext.getCmp('cboClientePadre').getValue());
	
	if(montoSolicitado!='' && tasaInteres!='' && plazo !='' && idPlazoSol !='' ){
		var parametros = 'montoSolicitado='+montoSolicitado+'&tasaInteres='+tasaInteres+'&plazo='+plazo+'&idPlazoSol='+idPlazoSol +'&idEsquemaCredito='+esquemaCredito+'&idCliente='+numCliente;
	
		window.open('./tablaRentasSolicitud.jsp?'+parametros, 'mywindow', 'resizable=yes,scrollbars=yes,width=750,height=400');
		
	}else{
		alert('No puede ser mostrada la tabla faltan datos..');
	}
	

};



com.mexcad.solicitudes.ejecutaPrevalidacionSolicitud=function(){
 
	
	com.mexcad.solicitudes.solicitud  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.generaInstanciaSolicitud();
	//alert(Ext.getCmp('fechaIngreso').getValue());
	com.mexcad.solicitudes.solicitud.fechaIngresoStr   = $('fechaIngreso').value;
	com.mexcad.solicitudes.solicitud.fechaInicialStr   = $('fechaInicio').value;
	com.mexcad.solicitudes.solicitud.ingresosMensuales = eliminaComas(Ext.getCmp('ingresosMensuales').getValue(), 'IMPORTE');
	com.mexcad.solicitudes.solicitud.apellidoPaterno   = Ext.getCmp('apellidoPaterno').getValue();	
	com.mexcad.solicitudes.solicitud.apellidoMaterno   = Ext.getCmp('apellidoMaterno').getValue();	
	com.mexcad.solicitudes.solicitud.nombresSolicitante   = Ext.getCmp('nombresSolicitante').getValue();	
	com.mexcad.solicitudes.solicitud.idEsquemaCredito   = Ext.getCmp('cboEsquemaCredito').getValue();	
	
	
	
	com.mexcad.solicitudes.solicitud.plazoSolicitado=parseInt(Ext.getCmp('plazo').getValue());
			
	com.mexcad.solicitudes.solicitud.idPeriodoSolicitado=parseInt(Ext.getCmp('cboPlazoSolicitado').getValue());
	com.mexcad.solicitudes.solicitud.montoSolicitado=eliminaComas(Ext.getCmp('montoSolicitado').getValue(), 'IMPORTE');
	
//	Ext.getCmp('')

	
	
	var respuesta= com.mexcad.solicitudes.jsonrpc.DelegateConnectors.prevalidaSolicitud(com.mexcad.solicitudes.solicitud);


	if(respuesta.valid == true){ // sin problema
		//if(respuesta.tipoMensaje == 1){
		/*}else if(respuesta.tipoMensaje== 3){
			$('mensajeCredito').innerHTML = '<h5 style="color:#0C3; font-size: 15px;" align="left">'+respuesta.mensaje+'</h5>';//Credito Activo
		}*/
		$('mensajeCredito').innerHTML = '<h5 style="color:#0C3; font-size: 15px;" align="left">'+respuesta.mensaje+'</h5>';//
		com.mexcad.solicitudes.banderaValidacion=1;

	
		Ext.getCmp('btnValida').setDisabled(true);			
		Ext.getCmp('btnGuarda').setDisabled(false);			
					
		Ext.getCmp('ingresosMensuales').setDisabled(true);
		Ext.getCmp('montoSolicitado').setDisabled(true);
		Ext.getCmp('fechaIngreso').setDisabled(true);
		
		
	}else { // rechazado 
		
		com.mexcad.solicitudes.banderaValidacion=0;
		$('mensajeCredito').innerHTML = '<h5 style="color:#F00; font-size: 15px;" align="left">'+respuesta.mensaje+'</h5>'; 
		
	}
	
	/*
	else if(respuesta == "CR_CLIENTE_CREDITO"){
		com.mexcad.solicitudes.banderaValidacion=1;
		
		Ext.getCmp('btnValida').setDisabled(true);			
		Ext.getCmp('btnGuarda').setDisabled(false);			
					
		Ext.getCmp('ingresosMensuales').setDisabled(true);
		Ext.getCmp('montoSolicitado').setDisabled(true);
		Ext.getCmp('fechaIngreso').setDisabled(true);
		
		
		$('mensajeCredito').innerHTML = '<h5 style="color:#F00; font-size: 15px;" align="left">Cliente con cr�dito(s) activo(s)</h5>'; 
		
	}else{
		com.mexcad.solicitudes.banderaValidacion=0;
		$('mensajeCredito').innerHTML = '<h5 style="color:#F00; font-size: 15px;" align="left">'+respuesta+'</h5>';
	}
*/	
};


com.mexcad.solicitudes.guardaRegistro=function(){

	
	
		
			
			if(com.mexcad.solicitudes.validaCampos() == true){
			// aqui se conecta a hibernate para traer los lugares de los eventos del
			//	alert('validacion correcta registro...'+com.mexcad.solicitudes.solicitud);
				
				if(com.mexcad.solicitudes.solicitud == null){
					com.mexcad.solicitudes.solicitud  = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.generaInstanciaSolicitud();
				}
				var fkSolicitud= com.mexcad.solicitudes.jsonrpc.DelegateConnectors.generaInstanciaFKSolicitud();
				
				com.mexcad.solicitudes.solicitud.nombresSolicitante=Ext.getCmp('nombresSolicitante').getValue();
				com.mexcad.solicitudes.solicitud.apellidoPaterno=Ext.getCmp('apellidoPaterno').getValue();
				com.mexcad.solicitudes.solicitud.apellidoMaterno=Ext.getCmp('apellidoMaterno').getValue();
				com.mexcad.solicitudes.solicitud.calle=Ext.getCmp('calle').getValue();
				com.mexcad.solicitudes.solicitud.colonia=Ext.getCmp('colonia').getValue();
				com.mexcad.solicitudes.solicitud.pobDelegacion=Ext.getCmp('pobDelegacion').getValue();
				com.mexcad.solicitudes.solicitud.cp=Ext.getCmp('cp').getValue();
				com.mexcad.solicitudes.solicitud.telefono=Ext.getCmp('telefono').getValue();
				
				
				
				com.mexcad.solicitudes.solicitud.plazoSolicitado=parseInt(Ext.getCmp('plazo').getValue());
			
				com.mexcad.solicitudes.solicitud.ingresosMensuales = eliminaComas(Ext.getCmp('ingresosMensuales').getValue(), 'IMPORTE');
				com.mexcad.solicitudes.solicitud.montoSolicitado   = eliminaComas(Ext.getCmp('montoSolicitado').getValue(), 'IMPORTE');	
				
				com.mexcad.solicitudes.solicitud.fechaInicialStr   = $('fechaInicio').value;
				com.mexcad.solicitudes.solicitud.fechaInicial=Ext.getCmp('fechaInicio').getValue();
				
				com.mexcad.solicitudes.solicitud.requiereAval=Ext.getCmp('requiereAval').getValue();
			    com.mexcad.solicitudes.solicitud.nombreAval=Ext.getCmp('nombreAval').getValue();
			    
			    com.mexcad.solicitudes.solicitud.fechaIngresoStr   = $('fechaIngreso').value;
				com.mexcad.solicitudes.solicitud.fechaIngreso=Ext.getCmp('fechaIngreso').getValue();
				
				com.mexcad.solicitudes.solicitud.numEmpleado=Ext.getCmp('numEmpleado').getValue();
				com.mexcad.solicitudes.solicitud.rfc=Ext.getCmp('rfc').getValue();
				
				
			
			    
			    
			    /*
	alert('nombresSolicitante:'+com.mexcad.solicitudes.solicitud.nombresSolicitante+"\n"+
				'apellidoPaterno:'+com.mexcad.solicitudes.solicitud.apellidoPaterno+"\n"+
				'apellidoMaterno:'+com.mexcad.solicitudes.solicitud.apellidoMaterno+"\n"+
				'descripcion:'+com.mexcad.solicitudes.solicitud.descripcion+"\n"+
				'plazoSolicitado:'+com.mexcad.solicitudes.solicitud.plazoSolicitado+"\n"+
				'requiereAval:'+com.mexcad.solicitudes.solicitud.requiereAval+"\n"+
				'nombreAval:'+com.mexcad.solicitudes.solicitud.nombreAval+"\n"
				);*/

				fkSolicitud.idUsuario=$('id').value;//Ext.getCmp('idUsuario').getValue();
				
				com.mexcad.solicitudes.solicitud.tasaBase = parseFloat(eliminaComas(Ext.getCmp('tasaBase').getValue(), 'IMPORTE')); 
				com.mexcad.solicitudes.solicitud.idEstatusSolicitud=1;

				
				com.mexcad.solicitudes.solicitud.idMoneda=parseInt(Ext.getCmp('cboMoneda').getValue());
				fkSolicitud.idTipoSolicitud=parseInt(Ext.getCmp('cboTipoSolicitud').getValue());
				com.mexcad.solicitudes.solicitud.idEsquemaCredito=parseInt(Ext.getCmp('cboEsquemaCredito').getValue());
				fkSolicitud.idCliente=parseInt(Ext.getCmp('cboClientePadre').getValue());
				com.mexcad.solicitudes.solicitud.idTipoContrato=parseInt(Ext.getCmp('cboContrato').getValue());
				
				
				com.mexcad.solicitudes.solicitud.idEjecutivo=parseInt(Ext.getCmp('cboEjecutivos').getValue());
				com.mexcad.solicitudes.solicitud.idPeriodoSolicitado=parseInt(Ext.getCmp('cboPlazoSolicitado').getValue());
			
				fkSolicitud.idComisionista=parseInt(Ext.getCmp('cboComisionistas').getValue());
			
			
				
			/*		alert('idUsuario:'+fkSolicitud.idUsuario+"]\n"+
				'tasaBase:'+com.mexcad.solicitudes.solicitud.tasaBase+"]\n"+
				'idMoneda:'+com.mexcad.solicitudes.solicitud.idMoneda+"]\n"+
				'idTasaBase:'+fkSolicitud.idTipoSolicitud+"]\n"+
				'idTasaBase:'+com.mexcad.solicitudes.solicitud.idEsquemaCredito+"]\n"+
				'idTasaBase:'+fkSolicitud.idCliente+"\n"+
				'idTasaBase:'+com.mexcad.solicitudes.solicitud.idEjecutivo+"\n"+
				'idTasaBase:'+com.mexcad.solicitudes.solicitud.idPeriodoSolicitado+"]\n"+
				'idEstatusSolicitud:'+com.mexcad.solicitudes.solicitud.idEstatusSolicitud+"]\n"
				);
				*/
				
				com.mexcad.solicitudes.solicitud.cksolicitud=fkSolicitud;
				
				var resp=com.mexcad.solicitudes.jsonrpc.DelegateConnectors.guardaSolicitud(com.mexcad.solicitudes.solicitud);
				alert('La solicitud '+resp+' fue guardada.\n');
				//alert('respuesta: '+resp+', '+parseInt(resp));
				ExtSS.idSolicitud=parseInt(resp);	
					//alert(ExtSS.idSolicitud);

				ExtSS.show(function(){});
				com.mexcad.solicitudes.limpiaForma();
				
			}
		
	  




};



	
	
Ext.onReady(function(){

    Ext.QuickTips.init();
com.mexcad.solicitudes.initData();
    // turn on validation errors beside the field globally
    Ext.form.Field.prototype.msgTarget = 'side';

    
      cboSolicitantes= new Ext.form.ComboBox({
			id : 'cboSolicitantes',
			hideLabel : true,
			editable : true,
			lazyInit : false,
			store : com.mexcad.solicitudes.storeSolicitantes,
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : true,
			width : 250,
			
	
			listeners: {
				select: function(o, record, index){
				   
					com.mexcad.solicitudes.cargaSolicitante();
					
					
				},
				blur: function(o, record, index){
					
					
					

				}
			}
		
		});
    
		cboContrato= new Ext.form.ComboBox({
			id : 'cboContrato',
			hideLabel : true,
			editable : false,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaContratos(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 250,
			value:1,
			blankText : 'Debe elegir una opci�n' ,
			emptyText: 'Elegir primero el cliente',
			listeners: {
				select: function(o, record, index){
				//	com.mexcad.solicitudes.recargaComboEjecutivos();
				}
			}
		
		});
		
		cboComisionistas= new Ext.form.ComboBox({
			id : 'cboComisionistas',
			hideLabel : true,
			editable : false,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaComisionistas(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 250,
			value:1,
			blankText : 'Debe elegir una opci�n' ,
			emptyText: 'Elegir un comisionista',
			listeners: {
				select: function(o, record, index){
				//	com.mexcad.solicitudes.recargaComboEjecutivos();
				}
			}
		
		});
		
    	 cboEjecutivos= new Ext.form.ComboBox({
			id : 'cboEjecutivos',
			hideLabel : true,
			editable : true,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaEjecutivos(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 250,
			blankText : 'Debe elegir una opci�n' ,
			emptyText: 'Elegir primero el cliente',
			listeners: {
				select: function(o, record, index){
				//	com.mexcad.solicitudes.recargaComboEjecutivos();
				}
			}
		
		});
    
    	var cboTipoSolicitud= new Ext.form.ComboBox({
			id : 'cboTipoSolicitud',
			hideLabel : true,
			editable : false,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaTipoSolicitud(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			value:1,
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 200,
			blankText : 'Debe elegir una opci�n' ,
			listeners: {
				select: function(o, record, index){
				/*	var contador = com.draicon.afectacion.store.storeClavesInternas.getCount();
					
					if(contador >0 ){
						funExtJS.alert("No puede cambiar el origen, ya que se le asignaron Claves", Ext.MessageBox.INFO);
						Ext.getCmp('cboTipoCliente').setValue( com.draicon.afectacion.origen);
						
					}else{
						com.draicon.afectacion.origen=Ext.getCmp('cboOrigen').getValue();
						
					}
					*/
				}
			}
		
		});
    	
		cboClientePadre= new Ext.form.ComboBox({
			id : 'cboClientePadre',
			hideLabel : true,
			editable : true,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaClientes(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 240,
			blankText : 'Debe elegir una opci�n' ,
			listeners: {
				select: function(o, record, index){
	
					var varCliente  = Ext.getCmp('cboClientePadre').getValue();
					var tasaBaseCliente = com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getTasaBaseByCliente(varCliente);
					//alert(tasaBaseCliente);
					if(tasaBaseCliente <=0 ){
						Ext.getCmp('tasaBase').setValue(31.2);
					}else{
						Ext.getCmp('tasaBase').setValue(tasaBaseCliente);
					}
					
					
					com.mexcad.solicitudes.gerente =  com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getGerentePorCliente(varCliente);
					
			d		$('nombreGerente').innerHTML = com.mexcad.solicitudes.gerente.nombres+' ' +
												    com.mexcad.solicitudes.gerente.apellidoPaterno+' '+
												    com.mexcad.solicitudes.gerente.apellidoMaterno;
					IniCtrFrm('cboEjecutivos');
	
					com.mexcad.solicitudes.recargaComboEjecutivos();
				    com.mexcad.solicitudes.recargaComboPlazo();d
					
												    

				},
				blur:  function(o, record, index){
	
					
					
					com.mexcad.solicitudes.gerente =  com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getGerentePorCliente(Ext.getCmp('cboClientePadre').getValue());
					$('nombreGerente').innerHTML = com.mexcad.solicitudes.gerente.nombres+' ' +
												    com.mexcad.solicitudes.gerente.apellidoPaterno+' '+
												    com.mexcad.solicitudes.gerente.apellidoMaterno;
					IniCtrFrm('cboEjecutivos');
	
					com.mexcad.solicitudes.recargaComboEjecutivos();
							
					
												    

				}
			}
		
		});
		
		
    	var cboMoneda= new Ext.form.ComboBox({
			id : 'cboMoneda',
			hideLabel : true,
			editable : false,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaMonedas(),
			forceSelection : true, 
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			value:1,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 50,
			blankText : 'Debe elegir una opci�n' ,
			listeners: {
				select: function(o, record, index){
				/*	var contador = com.draicon.afectacion.store.storeClavesInternas.getCount();
					
					if(contador >0 ){
						funExtJS.alert("No puede cambiar el origen, ya que se le asignaron Claves", Ext.MessageBox.INFO);
						Ext.getCmp('cboTipoCliente').setValue( com.draicon.afectacion.origen);
						
					}else{
						com.draicon.afectacion.origen=Ext.getCmp('cboOrigen').getValue();
						
					}
					*/
				}
			}
		
		});
		
		cboEsquemaCredito= new Ext.form.ComboBox({
			id : 'cboEsquemaCredito',
			hideLabel : true,
			editable : false,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaEsquemaCredito(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 150,
			value:4,
			blankText : 'Debe elegir una opción' ,
			listeners: {
				select: function(o, record, index){
				/*	var contador = com.draicon.afectacion.store.storeClavesInternas.getCount();
					
					if(contador >0 ){
						funExtJS.alert("No puede cambiar el origen, ya que se le asignaron Claves", Ext.MessageBox.INFO);
						Ext.getCmp('cboTipoCliente').setValue( com.draicon.afectacion.origen);
						
					}else{
						com.draicon.afectacion.origen=Ext.getCmp('cboOrigen').getValue();
						
					}
					*/
				}
			}
		
		});
		/*
		cboTasaBase= new Ext.form.ComboBox({
			id : 'cboTasaBase',
			hideLabel : true,
			editable : false,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaTasaBase(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 150,
			value:1,
			blankText : 'Debe elegir una opci�n' ,
			listeners: {
				select: function(o, record, index){
			
				}
			}
		
		});
		*/
		
		cboPlazoSolicitado= new Ext.form.ComboBox({
			id : 'cboPlazoSolicitado',
			hideLabel : true,
			editable : true,
			lazyInit : false,
			store : com.mexcad.solicitudes.obtieneListaPlazoSolicitado(),
			displayField : '',
			typeAhead : true,
			displayField : 'text',
			valueField : 'value',
			mode : 'local',
			triggerAction : 'all',
			selectOnFocus : true,
			value:2,
			listClass : 'x-combo-list-small',
			allowBlank : false,
			width : 150,
			blankText : 'Debe elegir una opci�n' ,
			listeners: {
				select: function(o, record, index){
				/*	var contador = com.draicon.afectacion.store.storeClavesInternas.getCount();
					
					if(contador >0 ){
						funExtJS.alert("No puede cambiar el origen, ya que se le asignaron Claves", Ext.MessageBox.INFO);
						Ext.getCmp('cboTipoCliente').setValue( com.draicon.afectacion.origen);
						
					}else{
						com.draicon.afectacion.origen=Ext.getCmp('cboOrigen').getValue();
						
					}
					*/
				}
			}
		
		});
    

		widthLabel =120;
		
	var panelBotones = new Ext.FormPanel({
        labelWidth: 75, // label settings here cascade unless overridden
      	id:'formSolicitudes',
        frame:true,
        //autoScroll : true, 
        title: 'Solicitud de crédito',
        bodyStyle:'padding:5px 5px 0',
        width: 730,
        height: 690,

        items: [{
					
					id : 'datosGenerales',
				    border:true,
				    //autoHeight:true,
					layout:'table',
					layoutConfig:{columns: 4},
					defaults:{bodyStyle:'padding:2px 0px 0;', border:false},
					items:[
						
					{
					   	html: ' Tipo de solicitud: ',
					   	width:widthLabel,
					  	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						layout: 'form',
						//width:140,
						colspan:7,
				   		items: [cboTipoSolicitud]
					},{
						width: widthLabel,
					   	html: ' Solicitante ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
					   	html: '',
					   	width:250,
					   	items: [cboSolicitantes]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width: widthLabel,
					   	html: ' Nombres : ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:150, allowBlank : false, style:'text-transform:uppercase;',blankText : 'Introduzca los nombres', id:'nombresSolicitante',
				   		//new Ext.form.TextField({hideLabel: true, width:30, value:com.draicon.afectacion.getSectorActivo(), allowBlank : false, blankText : 'Ingrese El c�digo del sector', id:'sectorAfectacion',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						}) ]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width: widthLabel,
					   	html: ' Apellido Paterno: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:200, allowBlank : false, style:'text-transform:uppercase;',blankText : 'Introduzca el apellido paterno', id:'apellidoPaterno',
				   		//new Ext.form.TextField({hideLabel: true, width:30, value:com.draicon.afectacion.getSectorActivo(), allowBlank : false, blankText : 'Ingrese El c�digo del sector', id:'sectorAfectacion',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width: widthLabel,
					   	html: ' Apellido Materno: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:200, allowBlank : false,style:'text-transform:uppercase;', blankText : 'Introduzca el apellido materno', id:'apellidoMaterno',
				   		//new Ext.form.TextField({hideLabel: true, width:30, value:com.draicon.afectacion.getSectorActivo(), allowBlank : false, blankText : 'Ingrese El c�digo del sector', id:'sectorAfectacion',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: ' Cliente Padre: ',
					   	width:widthLabel,
					  	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						layout: 'form',
						//width:140,
						colspan:7,
				   		items: [cboClientePadre]
					},{
						width: widthLabel,
					   	html: ' Gerente: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
					   	html:'<div id="nombreGerente" style="color: #0000FF; font-size: 10pt;text-align:letf"> </div>',
						width:200,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width: widthLabel,
					   	html: ' IngresosMensuales: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({selectOnFocus : true,hideLabel: true, blankText : 'Introduzca los ingresos', id:'ingresosMensuales',
				   		//new Ext.form.TextField({hideLabel: true, width:30, value:com.draicon.afectacion.getSectorActivo(), allowBlank : false, blankText : 'Ingrese El c�digo del sector', id:'sectorAfectacion',
				   			selectOnFocus:true,
				   			value:'0.00',
				   			listeners:{
										blur :function(o){
										//  if(storeClaves.getCount()>0){
											formateaImporteMoneda('ingresosMensuales','CAMPO');
										//	recordData.data.enero= 
											
										//  }
										}
							}
						})]
					},{
						width:150,
					   	html: ' Fecha de ingreso:',
					   	bodyStyle:funExtJS.styleFONT+'text-align:right;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.DateField({hideLabel: true, 
				   						width:100,value:com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getCurrentDateStr(), 
				   						allowBlank : false,  
				   						readOnly :false, 
				   						blankText : 'Introduzca la fecha de ingreso', 
				   						id:'fechaIngreso',
				   						invalidText:'No es un formato v�lido debe ser de la forma: dd/mm/aaaa',
									   	format: 'd/m/Y',
									   	listeners:{
											blur :function(o){
												
											}
										}
						})]
					},{
						width: widthLabel,
					   	html: ' N�m. Empleado: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:100, style:'text-transform:uppercase;', blankText : 'Introduzca el n�mero de empleado', id:'numEmpleado',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
						width: 150,
					   	html: ' RFC: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:right;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:130, allowBlank : false,style:'text-transform:uppercase;', blankText : 'Introduzca el RFC', id:'rfc',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
						width:150,
					   	html: ' Calle: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextArea({hideLabel: true, style:'text-transform:uppercase;', width:235, height:35, allowBlank : false, blankText : 'Introduzca la calle', id:'calle',
									   	listeners:{
											blur :function(o){
											}
										}
						})]
					},{
						width:150,
					   	html: ' Colonia: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:right;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextArea({hideLabel: true, style:'text-transform:uppercase;', width:140, height:35, allowBlank : false, blankText : 'Introduzca la colonia', id:'colonia',
									   	listeners:{
											blur :function(o){
											}
										}
						})]
					},{
						width: widthLabel,
					   	html: ' Del. / mun.: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:235, allowBlank : false,style:'text-transform:uppercase;', blankText : 'Introduzca la delegaci�n o municipio', id:'pobDelegacion',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
						width: 150,
					   	html: ' C.P.: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:right;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, maxLength:6, maxLengthText : 'El campo es de m�ximo 6 n�meros', width:130, allowBlank : false,style:'text-transform:uppercase;', blankText : 'Introduzca el C.P.', id:'cp',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
						width: 150,
						html: ' Monto solicitado: $',
						bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
										   
					},{
						layout: 'form',
						width:250,
						items: [new Ext.Panel({
						        	collapsible: false,
							        //	width:650,
						        	border:false,
						        	layout:'table',
						        	layoutConfig : {columns : 3},
						     		items: [new Ext.form.TextField({hideLabel: true, width:100, allowBlank : false, blankText : 'Introduzca el monto de cr�dito requerido', id:'montoSolicitado',
										   			selectOnFocus:true,
										   			value:'0.00',
										   			listeners:{
														blur :function(o){
															formateaImporteMoneda('montoSolicitado','CAMPO');
														}
													}
												}),{
										   	html: '&nbsp;&nbsp;&nbsp;Moneda: ',
											border:false,
										   	bodyStyle:funExtJS.styleFONT+'text-align:center;padding:0px 0px 0;',
										   	width:70
										},{
										   border:false,
										  // width:150,
										   items: [cboMoneda]}]})
											   
									   		]
					},{
						width: 150,
					   	html: ' Teléfono: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:right;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:130, allowBlank : false,style:'text-transform:uppercase;', blankText : 'Introducir el n�mero telef�nico', id:'telefono',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
					   	html: ' Esquema de crédito: ',
					   	width:widthLabel,
					  	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						layout: 'form',
						//width:140,
						colspan:7,
							
				   		items: [cboEsquemaCredito]
					},{
					   	html: ' Tasa de inter�s: ',
					   	width:widthLabel,
					  	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						layout: 'form',
						//width:140,
						colspan:7,
							
				   		items: [new Ext.form.TextField({hideLabel: true, width:50, allowBlank : false, blankText : 'Introduzca la tasa base', id:'tasaBase',
								   			selectOnFocus:true,
								   			value:0.0,
								   			listeners:{
														blur :function(o){
															formateaImporteMoneda('tasaBase','CAMPO');
														}
											}
										})]
					},{
						width: 150,
					   	html: ' Plazo: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
						border:false,
				   		items: [new Ext.Panel({
						        	collapsible: false,
						        //	width:650,
						        	border:false,
						        	layout:'table',
						        	layoutConfig : {columns : 3},
						     		items: [new Ext.form.TextField({hideLabel: true, width:50, allowBlank : false, blankText : 'Introduzca el plazo', id:'plazo',
								   			selectOnFocus:true,
								   		//	enableKeyEvents: true,

								   			listeners:{
								   				 keypress : function(obj,e){
								   				 	if(!onlyNumbers(e)){
								   				 		//alert(e.getKey());
								   				 		var cad= Ext.getCmp('plazo').getValue();
								   				 		alert(cad);
								   				 		Ext.getCmp('plazo').setValue(cad.substr(0,cad.length-1)); 
								   				 		
								   				 	//	alert(obj.value+', '+Ext.getCmp('plazo').getValue());
								   				 	}
								   				
								   				},
												blur :function(o){
													
													var cad= Ext.getCmp('plazo').getValue();
													cad = cad.replace(/[^1234567890]/g, ''); 
													if(cad==null|| cad==''){
														cad=1;
													}
													Ext.getCmp('plazo').setValue(cad); 
								   				 		
													
												}
											}
										}),{
										   	html: '',
											border:false,
										   	//bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;',
										   	width:30
										},{
										   border:false,
										  // width:150,
										   items: [cboPlazoSolicitado]}]})
							   ]
					},{
						width:150,
					   	html: ' Fecha de inicio: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:right;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.DateField({hideLabel: true, 
				   						width:100,value:com.mexcad.solicitudes.jsonrpc.DelegateConnectors.getCurrentDateStr(), 
				   						allowBlank : false,  
				   						readOnly :false, 
				   						blankText : 'Introduzca la fecha de ingreso', 
				   						id:'fechaInicio',
				   						invalidText:'No es un formato v�lido debe ser de la forma: dd/mm/aaaa',
									   	format: 'd/m/Y',
									   	listeners:{
											blur :function(o){
												
											}
										}
						})]
					},{
						width:150,
					   	html: ' Ejecutivo: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [cboEjecutivos]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width:150,
					   	html: ' Comisionista: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [cboComisionistas]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width:150,
					   	html: ' Tipo de contrato: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [cboContrato]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width:150,
					   	html: ' Requiere aval: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:100,
				   		items: [new Ext.form.Checkbox({hideLabel: true, width:40, id:'requiereAval',
				   			selectOnFocus:true,
				   			listeners:{
								check :function(elemento, valor){
									
								   if(com.mexcad.solicitudes.banderaValidacion == 0){
								       if(valor == true){
								       	
											Ext.getCmp('nombreAval').show();
											Ext.getCmp('btnValida').setDisabled(true);			
											Ext.getCmp('btnGuarda').setDisabled(false);	
											
								       }else{
								       		Ext.getCmp('nombreAval').hide();
								       		Ext.getCmp('btnValida').setDisabled(false);			
											Ext.getCmp('btnGuarda').setDisabled(true);	
								       }
								   }else{
											Ext.getCmp('btnValida').setDisabled(true);			
											Ext.getCmp('btnGuarda').setDisabled(false);	

								   		if(valor == true){
								       	
											Ext.getCmp('nombreAval').show();
											
								       }else{
								       		Ext.getCmp('nombreAval').hide();
								       }
								   
								   }	
								}
							}
						})]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
						width: 150,
					   	html: ' Aval: ',
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					   
					},{
						layout: 'form',
						width:250,
				   		items: [new Ext.form.TextField({hideLabel: true, width:250, allowBlank : true,style:'text-transform:uppercase;',  id:'nombreAval',
				   			selectOnFocus:true,
				   			listeners:{
								blur :function(o){
								}
							}
						})]
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   	html: '',
					   	width:10,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					},{
					   html:'<div id="mensajeCredito" style="color: #0000FF; font-size: 10pt;text-align:letf"> </div>',
						width:250,
					   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
					}]
						
					
				},{
						layout: 'form',
						width:600,
						border:false,
				   		items: [new Ext.Panel({
						        	collapsible: false,
						        	width:600,
						        	border:false,
						        	layout:'table',
						        	layoutConfig : {columns : 10},
						     		items: [{
											   	html: '',
											   	width:130,
											   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
											},
								     		new Ext.Button({id:'btnGuarda' ,text:'Guardar', 
															  width:50,
															  iconCls : 'save',
															  disabled :true,
															  handler: com.mexcad.solicitudes.guardaRegistro
																			   	
											}),{
											   	html: '',
											   	width:10,
											   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
											},new Ext.Button({id:'btnValida' ,text:'Validar', 
															  width:50,
															  iconCls : 'validar',
															 
															  handler: com.mexcad.solicitudes.ejecutaPrevalidacionSolicitud
																			   	
											}),{
											   	html: '',
											   	width:10,
											   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
											},new Ext.Button({id:'btnCancel' ,text:'Cancel', 
															  width:50
																			   	
											}),{
											   	html: '',
											   	width:10,
											   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
											},new Ext.Button({id:'btnLimpiar' ,text:'Limpiar', 
															  width:50,
															  iconCls : 'cancel',
															 
															  handler: com.mexcad.solicitudes.limpiaForma
																			   	
											}),{
											   	html: '',
											   	width:10,
											   	bodyStyle:funExtJS.styleFONT+'text-align:left;padding:0px 0px 0;'
											},new Ext.Button({id:'btnMuestraTabla' ,text:' Tabla ', 
															  width:50,
															  iconCls : 'tabla',
															 
															  handler: com.mexcad.solicitudes.muestraTabla
																			   	
											})
						     		]})
							   ]
					}
				
				
				
				]

     
    });
		
		


    
    var fsf = new Ext.Panel({
        	//collapsible: false,
    		autoScroll : true, 
    		
        	defaults: {bodyStyle : 'padding:0px 0px 0;', border : false},
     		items: [{ //
				layout: 'table',
				//colspan:5,
				boder:false,
				height: 500,
				autoScroll : true, 
			   	defaults : {bodyStyle : 'padding:0px 0px 0;', border : false},
		    	layoutConfig: {columns: 1},
		    	items:[panelBotones]
			}]
		});
		fsf.render(document.body);
		
	Ext.getCmp('nombreAval').hide();
    
    com.mexcad.solicitudes.muestraVentana();
    com.mexcad.solicitudes.winDetalle.hide();
    
    
});// termina OnReady









com.mexcad.solicitudes.muestraVentana=function(){

	dsSolicitudes = new Ext.data.Store({
        reader: new Ext.data.ArrayReader({}, [
               {name: 'idSolicitud'},
               {name: 'idMoneda'},
               {name: 'idTipoSolicitud'},
               {name: 'idCliente'},
               {name: 'idEsquemaCredito'},
               {name: 'idUsuario'},
               {name: 'idEstatusSolicitud'},
               {name: 'idEjecutivo'},
               {name: 'tasaBase'},
               {name: 'idPeriodoSolicitado'},
			   {name: 'nombresSolicitante'},
               {name: 'apellidoPaterno'},
               {name: 'apellidoMaterno'},
               {name: 'calle'},
               {name: 'colonia'},
               {name: 'pobDelegacion'},
               {name: 'cp'},
               {name: 'telefono'},
               
               
               {name: 'ingresosMensuales'},
               {name: 'fechaIngreso'},
               {name: 'montoSolicitado'},
               {name: 'plazoSolicitado'},
               {name: 'fechaIngresoStr'},
               {name: 'nombreCompleto'},
               {name: 'requiereAval'},
               {name: 'nombreAval'},
               {name: 'fechaInicialStr'},
               
               
               
              ])
    });
    
    

    
    
    
    
    dsSolicitudes.loadData(arrayData);

        var colModel = new Ext.grid.ColumnModel([
        {id:'idSolicitud',header: "NumSolicitud", width: 60, sortable: true, dataIndex: 'idSolicitud'},
        {header: "Nombre del Solicitante", width: 200, sortable: true, dataIndex: 'nombreCompleto'},
        {header: "Ingresos mensuales", width: 125, sortable: true,  dataIndex: 'ingresosMensuales'},
        {header: "fechaIngreso", width: 85, sortable: true,  dataIndex: 'fechaIngreso'}
        
    ]);
    
    

    	var gpSolicitud = new Ext.grid.EditorGridPanel({
			id:'gpEjecutivo',
			store: dsSolicitudes,	
			width: 550,
			height:250,
			clicksToEdit:1,
			cm:colModel,
			frame:false,
			border: true,
			selModel: new Ext.grid.RowSelectionModel({singleSelect:true})
		
		});

	
	
	
	
if(!com.mexcad.solicitudes.winDetalle){
         com.mexcad.solicitudes.winDetalle = new Ext.Window({
         	    title : 'Buscar Solicitante',
               	width:500,
				height:400,
				closeAction:'hide',
				plain: true,
				modal: true,
				defaults: { border: false},
		items:new Ext.FormPanel ({
		    autoScroll: true,
		    id:'formInternas',
		   	layout: 'table',
			layoutConfig: {columns: 5},
			items:[{
		  		xtype:'panel',
		  		plain:true,
		   		activeTab: 0,
		   		width:500,
		   		height:290,
		   		resizeTabs:false,
				layoutOnTabChange: true,
				border:false,
				defaults:{bodyStyle:'padding:0px;font-size:10;font-family:Verdana', border:false},
				items:[gpSolicitud]
			}],
			buttons: [{
		        	text: 'Cancelar',
		        	iconCls : 'close',
		        	handler: function(){
		        	//	com.mexcad.solicitudes.banderaGerente=0;
		        		com.mexcad.solicitudes.winDetalle.hide();
		        		location="./titulo.html";
		        	//	com.draicon.afectacion.store.storeAfectacion.load({params:{start: 0, limit: 20}});
				
		       		}
				}] 
			}) 
            });
        }
        com.mexcad.solicitudes.winDetalle.show();
        
        gpSolicitud.on('dblclick', function() {
	
			if (typeof(gpSolicitud.getSelectionModel().getSelected()) != 'undefined') {
				//	alert(recordData.data.enero);
				var recordData=gpSolicitud.getSelectionModel().getSelected();
				
			

				Ext.getCmp('nombresSolicitante').setValue(recordData.data.nombresSolicitante);
				Ext.getCmp('apellidoPaterno').setValue(recordData.data.apellidoPaterno);
				Ext.getCmp('apellidoMaterno').setValue(recordData.data.apellidoMaterno);
				
    			com.mexcad.solicitudes.winDetalle.hide();
				
			}
			
		});
};
